-
Notifications
You must be signed in to change notification settings - Fork 3.3k
internal: (studio) skip cancelling studio on watched:file:changed #31804
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
internal: (studio) skip cancelling studio on watched:file:changed #31804
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR updates the runner’s event handling to avoid cancelling studio when a file change should only trigger a rerun, and adds an end-to-end test for the cloud studio scenario.
- Skip calling
studioStore.cancel()
onwatched:file:changed
when studio (local or cloud) is active - Remove the generic rerun binding array and explicitly bind only
runner:restart
and the customwatched:file:changed
handler - Add a Cypress test to verify cloud studio remains open after spec file changes
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
File | Description |
---|---|
packages/app/src/runner/event-manager.ts | Conditional studioStore.cancel() and explicit rerun event binding |
packages/app/cypress/e2e/studio/studio-cloud.cy.ts | New test for cloud studio behavior on spec file changes |
Comments suppressed due to low confidence (2)
packages/app/cypress/e2e/studio/studio-cloud.cy.ts:209
- [nitpick] The test description says 'exits studio mode' but the assertion checks that the studio panel remains visible. Consider renaming it to 'does not exit studio mode...' or similar to match the behavior.
it('exits studio mode if the spec is changed on the file system', () => {
packages/app/src/runner/event-manager.ts:161
- Add a test case covering the scenario when
LOCAL_STUDIO_PATH
is set (local studio) to ensure thatstudioStore.cancel()
is correctly skipped for local studio as well.
if (!Cypress.env('LOCAL_STUDIO_PATH') && !Cypress.env('ENABLE_CLOUD_STUDIO')) {
cypress
|
Project |
cypress
|
Branch Review |
mschile/studio/skip_studio_cancel_on_file_changed
|
Run status |
|
Run duration | 18m 49s |
Commit |
|
Committer | Matthew Schile |
View all properties for this run ↗︎ |
Test results | |
---|---|
|
0
|
|
8
|
|
1232
|
|
0
|
|
32182
|
View all changes introduced in this branch ↗︎ |
UI Coverage
46.11%
|
|
---|---|
|
189
|
|
166
|
Accessibility
92.74%
|
|
---|---|
|
3 critical
9 serious
2 moderate
2 minor
|
|
698
|
Released in This comment thread has been locked. If you are still experiencing this issue after upgrading to |
Additional details
studioStore.cancel()
when the cloud studio is requestedrerun
was getting called twice due towatched:filed:changed
being listened to twice. Depending on timing, this would lead to weird behavior where logs were duplicated on the reporter (it appeared there were two event managers running)Steps to test
How has the user experience changed?
studio_save.mov
PR Tasks
cypress-documentation
?type definitions
?